fxm3_6 dataset

Environment

library(bigMap)
# source m.list and graph utilities
source('~/bigMap/bdm_xtrs.R')
# range of perplexities given as a fraction of the number of data rows
ppx.list <- c(.01, .05, .10, .20, .30, .40, .50, .60, .70, .80, .90, .95, .99)

Load Data

load('g.RData')
str(g)
## List of 4
##  $ dSet       : chr "fxm3_6"
##  $ data       : int [1:5026, 1:5026] 0 1 1 1 1 1 1 1 1 1 ...
##   ..- attr(*, "dimnames")=List of 2
##   .. ..$ : NULL
##   .. ..$ : chr [1:5026] "V1" "V2" "V3" "V4" ...
##  $ edges      :'data.frame': 44500 obs. of  2 variables:
##   ..$ V1: int [1:44500] 2 3 4 5 6 7 8 9 10 11 ...
##   ..$ V2: int [1:44500] 1 1 1 1 1 1 1 1 1 1 ...
##  $ is.distance: logi TRUE

Load ptSNE and UMAP results

load('ptSNE_C/glist_C.RData')
g.list <- g.list_C

ptSNE parametric setup

str(g.list[[1]]$ptsne[1:6])
## List of 6
##  $ threads: num 6
##  $ layers : num 3
##  $ rounds : int 4
##  $ boost  : num 1
##  $ theta  : num 0
##  $ alpha  : num 0.5

ptSNE Output

# plot ppx. .01, .05, .10, .20, .30, .50, .50, .70, .90, .95, .99
glist.dev(g.list, method = 'ptsne', path = 'ptSNE_C/', verbose = F)

Quality

Rank-based global/local structure preservation

g.list <- bdm.list.qlty(g.list, g$data, threads = 4, layers = 2, rounds = 2, qm = 'rb', verbose = F)
bdm.list.qlty.plot(g.list, qm = 'rb', y.lim = c(0.8, 1.0))

Kary-neighborhood preservation

g.list_A <- g.list
Previous version (threads = 10, layers = 2, rounds = 1)
load('ptSNE_A/glist_A.RData')
g.list_A <- bdm.list.qlty(g.list_A, g$data, threads = 4, layers = 2, rounds = 2, qm = 'kn', verbose = F)
bdm.list.qlty.plot(g.list_A, qm = 'kn')

Current version (threads = 6, layers = 3, rounds = 4)
g.list_C <- bdm.list.qlty(g.list_C, g$data, threads = 4, layers = 2, rounds = 2, qm = 'kn', verbose = F)
bdm.list.qlty.plot(g.list_C, qm = 'kn')

Running Times

knitr::kable(mlist.rTimes(g.list_C), caption = 'Computation times (s)') %>%
  kable_styling(full_width = F)
Computation times (s)
50 251 503 1005 1508 2010 2513 3016 3518 4021 4523 4775 4976
ptsne 790 789 791 791 791 790 791 791 791 791 791 787 785

Run on: Intel(R) Xeon(R) CPU E5-2650 v3 2.30GHz, 32Mb cache, 20 cores, 200GB RAM.

Discussion